home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / zlarfx.z / zlarfx
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. ZZZZLLLLAAAARRRRFFFFXXXX((((3333FFFF))))                                                          ZZZZLLLLAAAARRRRFFFFXXXX((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ZLARFX - applie a complex elementary reflector H to a complex m by n
  10.      matrix C, from either the left or the right
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE ZLARFX( SIDE, M, N, V, TAU, C, LDC, WORK )
  14.  
  15.          CHARACTER      SIDE
  16.  
  17.          INTEGER        LDC, M, N
  18.  
  19.          COMPLEX*16     TAU
  20.  
  21.          COMPLEX*16     C( LDC, * ), V( * ), WORK( * )
  22.  
  23. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  24.      ZLARFX applies a complex elementary reflector H to a complex m by n
  25.      matrix C, from either the left or the right. H is represented in the form
  26.  
  27.            H = I - tau * v * v'
  28.  
  29.      where tau is a complex scalar and v is a complex vector.
  30.  
  31.      If tau = 0, then H is taken to be the unit matrix
  32.  
  33.      This version uses inline code if H has order < 11.
  34.  
  35.  
  36. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  37.      SIDE    (input) CHARACTER*1
  38.              = 'L': form  H * C
  39.              = 'R': form  C * H
  40.  
  41.      M       (input) INTEGER
  42.              The number of rows of the matrix C.
  43.  
  44.      N       (input) INTEGER
  45.              The number of columns of the matrix C.
  46.  
  47.      V       (input) COMPLEX*16 array, dimension (M) if SIDE = 'L'
  48.              or (N) if SIDE = 'R' The vector v in the representation of H.
  49.  
  50.      TAU     (input) COMPLEX*16
  51.              The value tau in the representation of H.
  52.  
  53.      C       (input/output) COMPLEX*16 array, dimension (LDC,N)
  54.              On entry, the m by n matrix C.  On exit, C is overwritten by the
  55.              matrix H * C if SIDE = 'L', or C * H if SIDE = 'R'.
  56.  
  57.      LDC     (input) INTEGER
  58.              The leading dimension of the array C. LDA >= max(1,M).
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ZZZZLLLLAAAARRRRFFFFXXXX((((3333FFFF))))                                                          ZZZZLLLLAAAARRRRFFFFXXXX((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      WORK    (workspace) COMPLEX*16 array, dimension (N) if SIDE = 'L'
  75.              or (M) if SIDE = 'R' WORK is not referenced if H has order < 11.
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.